#ifndef SQLITEGENREDAO_H_
#define SQLITEGENREDAO_H_

#include "../dao/GenreDAO.h"
#include "../../../util/exception/SQLiteException.h"

#include <sqlite3.h>
#include <sstream>

class SQLiteGenreDAO: public GenreDAO {
private:
	sqlite3* database;
public:
	SQLiteGenreDAO(sqlite3 *database);
	virtual void save(const Genre& genre);
	virtual void update(const Genre& genre);
	virtual void remove(const Genre& genre);
	virtual Genre loadGenreById(int id);
	virtual Genre loadGenreByName(const std::string& name);
	virtual int countAll();
};

#endif /* SQLITEGENREDAO_H_ */
